import {
	Random,
	mock
} from "mockjs"; // 导出随机函数

function login(req) {
	// req是一个请求对象，包含: url，type和param属性

	const body = JSON.parse(req.body); // 解析请求参数，假设为分页参数等
	const param = body.param;
	let code = 200;
	let msg = "登录成功";
	let data = {
		username: Random.cname(),
		token: Random.guid(),
		message: "Login successfully.",
	};

	if (param.username !== "admin" || param.password !== "123456") {
		code = 201;
		msg = "账号或密码错误";
		data = {};
	}

	return {
		code,
		data,
		msg,
	};
}

function logout(req) {
	return {
		code: 200,
		data: {
			message: "Logout successfully.",
		},
	};
}

function list(req) {

	// console.log(req)
	const body = JSON.parse(req.body); // 解析请求参数，假设为分页参数等
	const params = body.params; // 解析请求参数，假设为分页参数等
	const pagination = body.pagination
	const page = pagination.page || 1; // 当前页数，默认为1
	const pageSize = pagination.pageSize || 10; // 每页显示条数，默认为10

	const userTemplate = {
		"id|+1": 1, // 自增ID
		"name": '@cname', // 中文名字
		"age|18-30": 1, // 18到30岁的随机数
		"email": '@email', // 随机邮箱
		"avatar": '@image("100x100", "red", "#fff", "avatar")' ,// 100x100像素的红色背景白色文字的头像
		"createTime": "@time", // 随机生成一个时间戳
	};
	const list = mock({
		'list|10': [userTemplate]
	}); // 生成10个用户数据

	return {
		code: 200,
		data: list.list,
		count: pageSize * 2,
		page: page,
		pageSize: pageSize,
		msg: "获取用户列表成功",
	};
}

export default {
	login,
	logout,
	list
};